好未来数据中台|中台全域特征池能力初探
背景:当前各个事业部前台均有不同的用户增长建模场景,数据特征的建设进度较为分散,形成数据孤岛。此外,大多数事业部不具备实时特征的生产能力,开发进度上也不一致,对于新用户的特征构建大多处于一个缺失的状态。基于此,中台在底层统一数仓、ID-Mapping技术、数据算法平台等统一底层建设的基础上,提出了全域特征池的概念。通过标准化特征数据生产、管理和服务的过程,打通数据算法一体化解决方案,提高算法人员的开发效率,为增长业务赋能。
01
整体项目架构
特征生产层:特征的数据源主要为离线数据和实时数据两个部分。离线数据一般存储在hive中,通过hive/spark等离线特征生产框架进行特征处理后形成用户特征表、物品特征表、交互特征表三种特征表类型。如果特征需要提供特征服务的功能,则需要额外存储在hologres等KV数据库中。实时数据则一般通过kafka等消息中间件与holo中的数据进行交互,通过flink等在线特征生产框架对特征进行写入和更新。
特征管理层:特征管理模块对特征表建立特征档案,并使用MySQL数据库作为存储介质,保存特征实例、标签信息、平台操作日志等信息。特征的产出方可以将符合平台规范的特征表进行注册上传至特征平台进行管理。特征池中的所有特征表默认对所有用户开放只读的权限。此后特征产出方对特征表进行修改(尤其是删除列、修改列、修改列类型等操作)时,需要重新注册特征表。平台方应当对用到该特征表的下游任务方进行通知。平台方应当管理特征的生产调度过程,以及特征的数据质量监控。当特征发生大的波动异常时,及时对特征进行下线处理。
特征服务层:离线特征服务时,具有读取权限的数据平台用户可直接通过平台的相关组件进行数据访问,也即通过T-mining算法平台进行样本拼接、特征筛选的过程。如有模型服务和特征服务的需求,则额外需要通过统一的数据接口获取实时的特征。
02
特征使用流程
如图,在算法应用中,有两种对特征的应用方式。一种是通过算法平台对样本和特征进行拼接,完成离线的训练和预测功能。而部分线上要求更高的算法场景,则需要实时获取用户的特征,通过模型服务的功能进行实时预测。
离线场景下的特征使用场景在我们当前的大多数业务中更加频繁。我们现在的平台能力已能支持算法人员通过T-data+T-mining数据算法平台完成全域特征数据实际的应用过程,如下图所示:
整个流程模板包括三个部分:输入(Input)、转化(Transform)、输出(Output), 其中包含的组件有:Label数据预处理、特征样本关联、特征工程、数据写出,组件主要功能:
Label数据预处理 :通过Hive/Spark方式抽取Label样本数据,其中样本包括以下几种:
一致性特征样本:指线上模型预测,会将一次预测请求中使用到的特征及Label相关字段收集、加工、拼接,为离线训练提供基础的样本数据,推荐使用,可更好保障一致性。
自定义:通过自定义方式抽取Label数据
历史训练样本:可依赖之前或其他同学生产的训练样本结果,只需要简单修改特征或采样等配置,即可实现对原数据微调,快速生成新的训练数据,提高执行效率。
特征样本关联 :线下训练如果需要调研一些新特征(即在一致性特征样本中不存在)效果,可以通过特征补录方式加入新的特征集。将Label数据与补录的实验特征根据唯一标识(如:user_id)进行关联。从而生成中间结果样本表
特征工程:
特征统计分析:辅助功能,基于训练样本中间表,对特征统计分析,包括覆盖度、均值、方差、最大/最小值、分位数、空值率等多种统计维度;
特征选择:
输入样本表名和特征表名;
样本自动拼接、特征iv值计算、覆盖度计算,输出特征报告,推荐选择特征结果;
通过模型进行特征重要性输出。
数据写出:将不同中间结果或者模型预测结果,写出到Hive表/HDFS/OSS等存储介质。
03
现有特征情况
中台的全域数据目前数据来源为业务数仓、统一数仓CDP数据、埋点数据源、微信聊天文本、挖掘画像标签等数据,共建设离线全域特征1000+维,均为用户粒度的特征。其中,离线表每天定时调度T+1产出,实时特征表当前正与网校的算法小伙伴共建中。
当前,我们的大部分特征都已经在多个策略位下验证收益。例如,网校与中台的导流课推荐合作项目中,使用的特征基本全部来自于全域特征池的特征,通过模型进行特征选择,并通过T-mining完成了模型的上线,最终线上的收益整体曝光转化率相比人工策略组高出15%+。在培优导流智康的banner位广告投放项目中,使用全域特征后的点击率也同样超过了对照组27%+。
04
展望
当前的特征平台仍然处在一个较为初期建设的过程中,当前部分功能通过单点建设的方式进行,有很多地方都不太完善。例如T-mining上使用特征筛选功能较为不便、不能清晰的看到特征的属性、数据分布信息等等。可视化的特征平台正在开发中,特征平台&算法平台将会着力于提升算法人员的使用效率和使用体验,将特征注册、特征服务、实时特征生产、自动特征筛选各个功能逐步的加入到特征平台中,帮助算法人员提效,提供一整套完整的数据算法解决方案。此外,中台将会通过底层的数仓拉通,生产沉淀更多维度及主题域的特征至全域特征池中,也支持业务方将自己的特征注册到全域特征池中,完成一个特征的复用和共同建设。
- 也许你还想看 -
我就知道你“在看”